home *** CD-ROM | disk | FTP | other *** search
/ Chaos CD Blue / Chaos_CD_Blue__[1999].iso / erfa / koeln / rc5desevil.php3 < prev    next >
Text File  |  1999-04-03  |  13KB  |  314 lines

  1. index.htmlimages/chaos.gifindex.htmlimages/computer.jpegindex.htmlimages/club.gifindex.htmlimages/cologne.gifindex.html="webmaster@koeln.ccc.de">
  2.     <meta name="DC.Creator" content="webmaster@koeln.ccc.de">
  3.     <meta name="date" content="April 03 1999 22:05:26.">
  4.     <meta name="DC.Date" content="April 03 1999 22:05:26.">
  5.     <meta name="DC.Title" content="Warum distributed.net b÷se ist.">
  6.     <meta name="DC.Subject" content="Probleme, die mit der aktuellen Politik von
  7. distributed.net zur Ver÷ffentlichung ihrer Clients entstehen">
  8.     <meta name="description" content="Fine Information delivered by the c4">
  9.     <meta name="DC.Description" content="Fine Information delivered by the c4"> 
  10.     <meta name="DC.Publisher" content="c4 - Chaos Computer Club Cologne">
  11.     <meta name="DC.Language" content="de">
  12.     <meta name="DC.Rights" content="(K) all Rights Reversed">
  13.   </HEAD>
  14.   <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#5B69A6" VLINK="#5B69A6" ALINK="#00FF00">
  15.  
  16.  <!-- Anfang Logo -->
  17.     <table width="100%">
  18.      <tr>
  19.       <td ALIGN=CENTER>
  20.        <a href="http://koeln.ccc.de/">
  21.         <img src="/images/chaos.gif" width="150" height="130" border="0"></a>
  22.       </td>
  23.       <td ALIGN=CENTER>
  24.        <a href="http://koeln.ccc.de/">
  25.         <img src="/images/computer.jpeg" width="150" height="130" border="0"></a>
  26.       </td>
  27.       <td ALIGN=CENTER>
  28.        <a href="http://koeln.ccc.de/">
  29.         <img src="/images/club.gif" width="150" height="130" border="0"></a>
  30.       </td>
  31.       <td ALIGN=CENTER>
  32.        <a href="http://koeln.ccc.de/">
  33.         <img src="/images/cologne.gif" width="150" height="130" border="0"></a>
  34.       </td>
  35.      </tr>
  36.      <tr>
  37.       <td CLASS=logo>Chaos</td>
  38.       <td CLASS=logo>Computer</td>
  39.       <td CLASS=logo>Club</td>
  40.       <td CLASS=logo>Cologne</td>
  41.      </tr>
  42.     </table>
  43.     <hr>
  44.     <!-- Ende Logo -->
  45.     <br><br>
  46.     <DIV CLASS="BODY">
  47.       <!-- start body -->                        
  48.   
  49.   <p CLASS="info">
  50.     Fast alle Hacker weltweit machen begeistert bei dem Projekt
  51.     distributed.net mit. Ich denke wir sollten uns eine kritischere
  52.     Einstellung zu diesem Projekt aneignen.
  53.   </p>
  54.  
  55.   <h1>Das distributed.net Projekt</h1>
  56.  
  57.   <p>
  58.     <a href="/go/http://www.distributed.net">distributed.net</a> ist eine
  59.     Aktion, um zu beweisen, da▀ die heute eingesetzten
  60.     Verschlⁿsselungsverfahren unsicher sind. PrimΣr wendet sich
  61.     distributed.net gegen die Algorithmen DES und RC5. Der Beweis, das 
  62.     diese Verschlⁿsselungssysteme nicht hinreichend sicher ist, soll
  63.     dadurch erreicht werden, da▀ einzelne, mit DES bzw. RC5
  64.     verschlⁿsselte Nachrichten, entschlⁿsselt werden. Dies geschieht,
  65.     indem einfach alle Schlⁿssel durchprobiert werden, bis beim
  66.     entschlⁿsseln eine sinnvolle Nachricht herauskommt. Ein nicht
  67.     sonderlich intelligentes Verfahren, aber vermutlich bei einigen
  68.     Verschlⁿsselungsalgorithmen die einzige M÷glichkeit, an den Inhalt 
  69.     einer verschlⁿsselten Nachricht zu kommen.
  70.   </p>
  71.  
  72.   <p>
  73.     Da ein einzelner Rechner sehr lange brauchen wⁿrde, um alle
  74.     Schlⁿssel durchzuprobierten, mⁿssen mehrere Rechner sich die
  75.     Arbeit teilen. Und da es sich um sehr viel Arbeit handelt, mⁿssen 
  76.     sich sehr viele Rechner die Arbeit teilen.  Um diese
  77.     Arbeitsteilung m÷glichst komfortabel zu machen, hat
  78.     distributed.net eine Software entwickelt, die oft als
  79.     <em>rc5des</em> bezeichnet wird.
  80.   </p>
  81.   
  82.   <p>
  83.     Im groben sieht das Prinzip dieser Software so aus: Jeder, der
  84.     teilnehmen will installiert eine sogenannte Client-Software auf
  85.     seinem Computer. Dieser <a
  86.     href="/go/http://distributed.net/clients.html">rc5des Client</a> ist
  87.     fⁿr sehr viele unterschiedliche Computer und Betriebssysteme
  88.     erhΣltlich. Der Client verbindet sich dann zu einem <a
  89.     href="http://distributed.net/rc5/proxyinfo.html">distributed.net
  90.     Server</a> und meldet sich zum Arbeitsantritt. Er bekommt dann
  91.     einen Block Schlⁿssel zugeteilt, die er auszuprobieren hat. Der
  92.     Client probiert dann die im zugewiesenen Schlⁿssel durch, was
  93.     einige Minuten bis viele Stunden dauern kann. Dabei lΣuft er im
  94.     Hintergrund mit niedriger PrioritΣt, so da▀ er die normale Arbeit
  95.     an dem Computer, auf dem er lΣuft, kaum behindert. Praktisch
  96.     arbeitet er nur, wenn der Computer nichts anderes zu tun hat. Den
  97.     Windows Client kann man sogar so konfigurieren, da▀ man nicht
  98.     sehen kann, da▀ er lΣuft.
  99.   </p>
  100.  
  101.   <p>
  102.     Wenn der Client mit seinem Block Schlⁿssel durch ist, meldet er
  103.     sich wieder bei einem der distributed.net Server, sagt da▀ er
  104.     fertig ist und fordert einen neuen Schlⁿsselblock an. Um die
  105.     Verbindung zum Server auch aus stark gesicherten Netzwerken zu
  106.     erm÷glichen, verfⁿgt der rc5des Client zum einen ⁿber die
  107.     M÷glichkeit die Daten ⁿber allerlei esoterische Wege an Firewalls
  108.     vorbeizutunneln, zum anderen gibt es einen Proxyserver, mit dem
  109.     man auch an Firewalls und privaten IP-Adressbereichen vorbei
  110.     arbeiten kann.
  111.   </p>
  112.  
  113.   <p>
  114.     Was distributed.net da macht ist also ganz sch÷n spannend: Die eh
  115.     nicht genutzte Rechenzeit auf tausenden Rechnern weltweit fⁿr
  116.     einen guten Zweck einsetzen. <em>Meta-Computing</em> wird das
  117.     ganze auch genannt. Eins ihrer Mottos ist "Cryptographie sicherer
  118.     machen, indem man sie bricht". Dadurch, da▀ bewiesen wird, da▀
  119.     manch Verschlⁿsselungssysteme gebrochen werden k÷nnen, hoffen
  120.     sie, die Industrie dazu zu bewegen, nur noch sicherere Algorithmen 
  121.     einzusetzen.
  122.   </p>
  123.  
  124.  
  125.   <h1>Probleme mit distributed.net</h1>
  126.  
  127.   <p>
  128.     Also alles sch÷n und gut? Nein, meiner Meinung nach ist
  129.     distributed.net b÷se. Die Ziele, die distributed.net anstrebt sind 
  130.     sicher ehrenwert, aber die Methode die sie dazu anwenden ist
  131.     falsch. Und das falsche lΣ▀t sich in einem Satz zusammenfassen:
  132.     <b>Die Software ist nicht im Quelltext erhΣltlich.</b>
  133.   </p>
  134.  
  135.   <p>
  136.     Warum das ein Problem sein soll? Jedem, der sich nochmal die
  137.     Features des rc5des Clients oben ansieht, sollte klar sein warum
  138.     das so ist. Da wird verlangt eine Software zu installieren, die
  139.     mit irgendwelchen Servern im Internet kommuniziert und dabei in der
  140.     Lage ist, an den meisten Firewalls und anderen Sicherheitssystemen
  141.     vorbei Daten zu ⁿbertragen. Diese Software ist obendrein auch noch
  142.     in der Lage, sich zumindest unter Windows einigerma▀en
  143.     wirkungsvoll vor dem Benutzer zu verstecken.<br> Und eine solche
  144.     Software soll man installieren, ohne den Quellcode zu haben, um
  145.     nachzuschauen, was dieses Programm <em>wirklich</em> macht?
  146.   </p>
  147.  
  148.   <p>
  149.     M÷glich wΣre doch beispielsweise, das das Programm ungefragt und
  150.     unentdeckt Informationen aus dem eigenen Computer
  151.     herausschafft. Oder auch schlichtweg, da▀ es bei der Angabe, wer
  152.     da rechnet manchmal etwas pfuscht. Schlie▀lich gibt es einen
  153.     bedeutenden Geldpreis fⁿr den, der den richtigen Schlⁿssel
  154.     findet. Woher soll ich wissen, da▀ das Programm sich bei mir
  155.     meldet und den Schlⁿssel nicht einfach klammheimlich
  156.     'rausschmuggelt und ich nichts von dem Gewinn abbekomme.<br> Und
  157.     selbst wenn man davon ausgeht, das die Programmierer von rc5des
  158.     integere Menschen sind, wer stellt sicher, da▀ sie keine Fehler
  159.     bei der Programmierung gemacht haben, die dazu fⁿhren, da▀ der
  160.     rc5des Client von dritten zu irgendwelchen b÷sen Zwecken
  161.     eingesetzt wird?
  162.   </p>
  163.  
  164.  
  165.   <h1>Obskures SicherheitsverstΣndnis</h1>
  166.  
  167.   <p>
  168.     Warum gibt distributed.net den Quellcode fⁿr ihren Client nicht
  169.     heraus? Erstaunlicherweise wird das mit "der Sicherheit" <a
  170.     href="/go/http://lists.distributed.net/hypermail/rc5.Dec1998/0006.html">
  171.     begrⁿndet</a>. Wenn jeder den Quellcode fⁿr den rc5des Client
  172.     hΣtte, k÷nnten b÷se Menschen rc5des so modifizieren, da▀ er gar
  173.     nicht die ihm zugeteilten Schlⁿssel ausprobieren wⁿrde, sondern sie 
  174.     einfach als ausprobiert zurⁿckmelden wⁿrde, ohne lange
  175.     'rumzurechnen. Das wⁿrde natⁿrlich wesentlich schneller gehen, so
  176.     dieser b÷se Mensch in der Statistik wesentlich weiter oben
  177.     erscheinen wⁿrde. Er hΣtte allerdings nie die Chance zu gewinnen,
  178.     da er ja nicht den richtigen Schlⁿssel finden kann, weil er gar
  179.     nicht ⁿberprⁿft, ob unter den ihm zugeteilten Schlⁿsseln der
  180.     richtige ist.<br> Das ganze k÷nnte den Erfolg von distributed.net
  181.     empfindlich gefΣhrden, denn es wΣre theoretisch m÷glich, da▀
  182.     zufΣllig in den dem Betrⁿger zugeteilten Bl÷cken der richtige
  183.     Schlⁿssel lag. Da dieser die Schlⁿssel ja nicht ausprobiert,
  184.     sondern sie einfach so als fertig zurⁿckmeldet, wⁿrden sie in der
  185.     distributed.net Datenbank als erfolglos getestet vermerkt und
  186.     somit nicht weiter ⁿberprⁿft. Somit hΣtte distributed.net keine
  187.     Chance, die richtigen Schlⁿssel zu finden.
  188.   </p>
  189.  
  190.   <p>
  191.     Die ─ngste, die bei distributed.net vorhanden sind, klingen
  192.     zunΣchst plausibel und doch sind sie meiner Meinung nach b÷se. Sie 
  193.     sind derartig naiv und f÷rdern eine ungemein falsche Denkweise,
  194.     da▀ man sie nur als b÷se bezeichnen kann. 
  195.   </p>
  196.  
  197.   <p>
  198.     Warum? Die Denke der distributed.net Leute beruht auf der der
  199.     Annahme, es gΣbe "<b>Security by Obscurity</b>". Sie denken, wenn
  200.     sie das ganze nur undurchschaubar genug machen, in dem sie den
  201.     Quellcode nicht herausgeben, wⁿrde das ganze sicher werden.
  202.     Dies ist ein auch in der Industrie sehr verbreiteter
  203.     Irrglaube. Und dieser Irrglaube ist b÷se, weil er zunΣchst so
  204.     ungemein einleuchtend klingen kann und daher schon sehr viel
  205.     Schaden angerichtet hat. Denn praktisch bietet dieser Ansatz kaum
  206.     zusΣtzliche Sicherheit.
  207.   </p>
  208.  
  209.   <p>
  210.     Die Hackercommunity verbringt sehr viel Zeit und Nerven darauf,
  211.     der Industrie beizubringen, da▀ sie offene Modelle nutzen mu▀,
  212.     wenn sie wirklich sichere Produkte erstellen will. ▄ber die
  213.     letzten Jahre haben wir auf diesem Gebiet schrittweise Erfolge
  214.     erzielen k÷nnen.
  215.   </p>
  216.  
  217.   <p>
  218.     Und jetzt gibt es da eine Gruppe daher, die beweisen will, da▀ man
  219.     bessere Verschlⁿsselung nutzen mu▀ und dabei ihren eigenen Code
  220.     durch "Security by Obscurity" zu schⁿtzen versucht. Das wirft
  221.     unser Bemⁿhen, dieses windige Sicherheitskonzept ein fⁿr alle mal
  222.     zurⁿckzudrΣngen ein ganzes Stⁿck zurⁿck.
  223.   </p>
  224.  
  225.   
  226.   <h1>Pfuschen auch ohne Quellcode</h1>
  227.  
  228.   <p>
  229.     Das der rc5des Client ohne Quellcode nicht wesentlich sicherer
  230.     ist, als mit Quellcode, ist ein gutes Beispiel, wie "Security by
  231.     Obscurity" versagt. Wenn er den Quellcode hΣtte, k÷nnte ein
  232.     Schuft diesen so modifizieren, da▀ nicht wirklich irgendwelche
  233.     Keybl÷cke berechnet werden, sondern diese einfach so als fertig
  234.     gemeldet werden (s.o.). Dafⁿr mⁿ▀te er allerdings in der Lage
  235.     sein, den hoch optimierten Code des rc5des Clients zu verstehen.
  236.   </p>
  237.  
  238.   <p>
  239.     Was fⁿr M÷glichkeiten bleiben einem Schuft, wenn er nicht den
  240.     Quellcode besitzt? Er kann die Buffer-files, in denen rc5des seine 
  241.     Daten speichert, analysieren und dann zu seinen Gunsten
  242.     modifizieren. Er k÷nnte auch das Protokoll, ⁿber das der rc5des
  243.     Client mit dem Server kommuniziert, analysieren und dann ein
  244.     Programm schreiben, welches sich dem Server gegenⁿber als normaler 
  245.     Client tarnen, ohne jemals etwas zu berechnen. 
  246.   </p>
  247.  
  248.   <p>
  249.     Was fⁿr unseren Schuft aber sicher am leichtesten wΣre, ist es, den
  250.     rc5des Client so zu patchen, da▀ er einfach nicht mehr rechnet,
  251.     sondern nur Bl÷cke als fertig meldet. Um dies zu erreichen mu▀ er
  252.     nur eine einzige Assembler-Anweisung patchen, nΣmlich die Schleife
  253.     um die DES-Berechnung. Diese ist aufgrund des stark optimierten
  254.     Codes in rc5des besonders einfach unter dem Debugger
  255.     auszumachen. Fⁿr jeden, der sich schon mal ernsthaft an fremdem
  256.     Code 'rumgepatcht hat, sollte das wirklich kein Problem sein. 
  257.   </p>
  258.  
  259.   <p>
  260.     Im <a href="http://koeln.ccc.de/">c4</a> ist es uns in kⁿrzester
  261.     Zeit gelungen, diesen Patch durchzufⁿhren. Wenn wir das k÷nnen,
  262.     k÷nnen andere das auch. Es zeigt sich also, da▀ der rc5des Client 
  263.     auch ohne Quellcode ungemein anfΣllig gegen Manipulationen ist.
  264.     Das Sicherheitsargument fⁿr die Nichtfreigabe des Quellcodes zieht 
  265.     also nicht.
  266.   </p>
  267.  
  268.  
  269.   <h1>Was tun?</h1>
  270.  
  271.   <p>
  272.     Mit diesem Sachverhalt ist nicht einfach umzugehen.  Generell sind 
  273.     die Ziele von distributed.net ja durchaus unterstⁿtzenswert. Soll
  274.     man jetzt keine rc5des Clients mehr laufen lassen? <br> Ich denke,
  275.     das Ziel darf nicht der Abbruch des distributed.net Projekts sein, 
  276.     sondern die Freigabe des Quellcodes. Um dies zu erreichen sollte
  277.     man auf die ZugΣnglichkeit von distributed.net fⁿr rationale
  278.     Argumente hoffen. Es bleibt nur zu hoffen, da▀ man nicht den
  279.     einen Pfusch-Patch fⁿr rc5des als Argumentationshilfe freigeben
  280.     mu▀. 
  281.   </p>
  282.  
  283.   <p>
  284.     Ich kann somit jeden, der einen rc5des Client betreibt, empfehlen,
  285.     bei distributed.net den Quellcode einzufordern. For the sake of
  286.     the code.
  287.   </p>
  288.  
  289.   <p>
  290.     Doobee R. Tzeck
  291.   </p>
  292.  
  293.     
  294.     <!-- end body -->
  295.     </DIV>
  296.     <hr>    
  297.     <table width="100%">
  298.      <tr>
  299.       <td>
  300.        (K) 1999 c4 - All Rights reversed
  301.       </td>
  302.       <td align="right">
  303.        <address>
  304.         <a href="mailto:drt@koeln.ccc.de">webmaster@koeln.ccc.de 
  305.         </a>
  306.        </address>
  307.       </td>
  308.      </tr>
  309.     </table>
  310.    </BODY>
  311.   </HTML>
  312.                    
  313. <!-- Last modified: March 15 1999 01:00:55.-->
  314.